package FinalTest;
/*
final
    1.final是java语言中的一个关键字
    2.final表示最终的，不可变的
    3.final可以修饰类，方法，变量
        final修饰的类无法被继承
        final修饰的方法无法被覆盖
        final修饰的变量一旦赋值，就不能重新赋值了
        static final联合修饰的变量称为“常量”
            常量名建议全部大写，每个单词之间采用下划线衔接
            常量和静态变量，都是存储在方法区，并且都是在类加载时初始化
 */
public class FinalTest1 {
    public static void main(String[] args){
        final Person p1 = new Person(12);
        //p1 = new Person(30); //final修饰的变量无法重新赋值
    }
}
class Person{
    final int age; //final修饰的实例变量需要手动赋值

    public Person(int age){ //如果要在有参构造方法中按以下方法赋默认值，类中不能有无参构造方法
        this.age = age;
    }
}